<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // aa=11&bb==22

        function getValue(str, key) {


            // str  -》'aa=11&bb=22
            // 2- -使用& 分割字符串 
            var arr = str.split('&');
            console.log(arr);//['a=11', 'b=22']

            // 保存循环中提取的结果
            var value;
            // 3-循环遍历 元素--字符串  
            arr.forEach(function (keyValue) {
                // console.log(keyValue);// xxx==xxx 
                // 获取等前面 和 后面的值 
                var keyValueArr = keyValue.split('=');//['a','11']  ['b','22']
                // console.log(keyValueArr);
                //判断，等号前面的值 是 a ，那么等号后的就是我们需要的结果
                if (keyValueArr[0] === key) {
                    // console.log(keyValueArr[1]);
                    //把结果保存到全局变量
                    value = keyValueArr[1]

                    // ------这里return  ，给这个函数参数的返回值，给不了外部函数返回值-如果这里是for循环，是可以在循环中中return 的
                    // return value;
                }
            })

            return value;

        }

        var r = getValue('aa=11&bb=22', 'bb')//11
        console.log(r);
        // var r1 = getValue('aa=11&bb=22', 'bb')//2
    </script>

</body>

</html>